/*
panic
最简单的错误处理机制就是 panic
它会打印一个错误消息，开始回退（unwind）任务，且通常会退出程序

显式的 panic 主要用于测试，以及处理不可恢复的错误。在原型开发中这很有用，
比如 用来测试还没有实现的函数，不过这时使用 unimplemented 更能表达意图。
另外在 测试中，panic 是一种显式地失败（fail）的好方法。
*/

fn give_princess(gift: &str) {
    if gift == "snake" {
        panic!("AAAAAaaa!");
    }
}

fn main() {
    give_princess("teddy");
    give_princess("snake");
}